var $payBackTable = $('#payBackTable');
var $auditTable = $('#auditTable');
var orderId;

$(function(){
    if($('#examineType').val() == 1){
        $('#orderCollectionBox').show()
        $('#auditTableBox').hide()
    }else{
        $('#orderCollectionBox').hide()
        $('#auditTableBox').show()
    }
    viewData();
    productDetails();
    getReturnMoneyList();
    auditTableInit()
    getAuditData();
    cooperateTable();
    productCollection();
})

function viewData(){
    $.ajax({
        url: '/bankFlowExamine/queryProductOderInfo',
        type: 'POST',
        dataType: "json",
        contentType: "application/x-www-form-urlencoded",
        data: {
            examineId:$('#examineId').val(),  //客户id
        },
        async:false,
        success: (function (data) {
            if (data.code == "000000") {
                orderId = data.data.productOrderId;
                var examineState = data.data.examineState;
                var examineInfo = data.data.examineInfo;
                if(examineState == 0){
                    $('.modal-footer').show();
                    $('#removeNote').attr('disabled',false);
                    $('#auditTitle').text('当前审核')
                    $('#removeNote').val('')
                }else if(examineState == 2){
                    $('.modal-footer').hide()
                    $('#removeNote').attr('disabled',true);
                    $('#auditTitle').text('已审核')
                    $('#removeNote').val(examineInfo)
                }else if(examineState == 1){
                    $('.modal-footer').hide()
                    $('#removeNote').attr('disabled',true);
                    $('#auditTitle').text('已审核')
                    $('#removeNote').val(examineInfo)
                }
                $('#orderNum').text('（订单编号：'+data.data.orderNumber+'）');
                //合同类型--1:非会员合同;2:会员新单合同;3:活动合同;4:会员续费合同5.兑换合同6.单品合同;7.会员单次
                if(data.data.contractType == 1){
                    $('#contractType').text('非会员合同')
                }else if(data.data.contractType == 2){
                    $('#contractType').text('会员新单合同')
                }else if(data.data.contractType == 3){
                    $('#contractType').text('活动合同')
                }else if(data.data.contractType == 4){
                    $('#contractType').text('会员续费合同')
                }else if(data.data.contractType == 5){
                    $('#contractType').text('兑换合同')
                }else if(data.data.contractType == 6){
                    $('#contractType').text('单品合同')
                }else if(data.data.contractType == 7){
                    $('#contractType').text('会员单次')
                }
                //合同起止日期
                $('#starTime').text(data.data.contractStartDate)
                $('#endTime').text(data.data.contractEndDate)
                //合同编号
                $('#contractNumber').text(data.data.contractNumber)
                //订单状态  订单状态--1:等待回款;2:已完成;3:作废;4:部分回款（回款维护）
                if(data.data.orderStatus == 1){
                    $('.orderVoid').show()
                }else if(data.data.orderStatus == 2){
                    $('.orderVoid2').show()
                }else if(data.data.orderStatus == 3){
                    $('.orderVoid3').show()
                }else if(data.data.orderStatus == 4){
                    $('.orderVoid4').show()
                }else if(data.data.orderStatus == 5){
                    $('.orderVoid5').show()
                }
                //订单所有人
                $('#createPeopleName').text(data.data.createPeopleName)
                //订单创建时间
                $('#createTm').text(data.data.createTm)
                //所属分公司
                $('#companyName').text(data.data.companyName)
                //客户名称
                $('#customerName').text(data.data.customerName)
                //订单总金额
                $('#orderActualTotalAmount').text(data.data.orderActualTotalAmount)
                //当前回款
                $('#returnMoneyAmount').text(data.data.returnMoneyAmount == ''?'-':data.data.returnMoneyAmount)
                //订单尾款
                $('#residueMoneyAmount').text(data.data.residueMoneyAmount)
                //解除关联备注
                $('#relationReason').val(data.data.relationReason)
                // //产品名称
                // $('#productName').val(data.data.productName);
            }else{
                $.alert(data.message);
            }
        }),
        error: (function (res) {
            $.alert('操作失败，请稍后再试!');
        })
    });
}

function  productDetails() {
    $.ajax({
        url: '/bankFlowExamine/queryProductList',
        type: 'POST',
        dataType: "json",
        contentType: "application/x-www-form-urlencoded",
        data: {
            pageIndex:1,
            pageSize:100,
            examineId:$('#examineId').val(),
        },
        success: (function (data) {
            if (data.code == "000000") {
                if(data.data.length>0){
                    var html = '';
                    $.each(data.data,function(index,item){
                        html +=`<div class="buyProductList" style="margin-top: 10px">
                               <div class="buyProduct clearfix">
                                   <div class="buyProductName pull-left">
                                       <div class=${item.productCategories == 0?'noMember':'productType'}></div>
                                       <div class="productNum">产品编号：${item.finishOrderProductNum}</div>
                                   </div>
                                   <div class="buyProductDetails pull-right">
                                       <div class="productName" style="height: 50%">
                                           <div class="img pull-left" >
                                               <img src="/images/finance/orderInfo/icon2.png" alt="" class="pull-left" style="display: block">
                                               <div class="product_name pull-left" style="margin-left: 15px">
                                                   <p class="product_key">产品名称</p>
                                                   <p class="product_value">${item.productName}</p>
                                               </div>
                                           </div>
                                       </div>
                                       <div class="productDetails pull-left" style="width: 100%">
                                           <div class="productDetailsItem  pull-left">
                                               <div class="img pull-left" style="margin-top: 10px">
                                                   <img src="/images/finance/orderInfo/icon3.png" alt="">
                                               </div>
                                               <div class="productDetailsList clearfix"  style="border-right: 1px solid #CCD2DB">
                                                   <div class="pull-left" style="width: calc(100% - 50px)">
                                                       <div class="productDetailsTitle">产品成交价</div>
                                                       <div class="productDetailsNum">${item.productFinalPrice}</div>
                                                   </div>
                                               </div>
                                           </div>
                                           <div class="productDetailsItem pull-left">
                                               <div class="img pull-left" style="margin-top: 10px">
                                                   <img src="/images/finance/orderInfo/icon4.png" alt="">
                                               </div>
                                               <div class="productDetailsList clearfix"  style="border-right: 1px solid #CCD2DB">
                                                   <div class="pull-left" style="width: calc(100% - 50px)">
                                                       <div class="productDetailsTitle">当前回款</div>
                                                       <div class="productDetailsNum">${item.paidMoney}</div>
                                                   </div>
                                               </div>
                                           </div>
                                           <div class="productDetailsItem  pull-left" >
                                               <div class="img pull-left" style="margin-top: 10px">
                                                   <img src="/images/finance/orderInfo/icon5.png" alt="">
                                               </div>
                                               <div class="productDetailsList clearfix">
                                                   <div class="pull-left" style="width: calc(100% - 50px)">
                                                       <div class="productDetailsTitle">当前尾款</div>
                                                       <div class="productDetailsNum">${item.residueMoney}</div>
                                                   </div>
                                               </div>
                                           </div>
                                       </div>
                
                                   </div>
                               </div>
                           </div>`
                    })
                    $('#ProductDetailsList').html(html)
                }else{
                    var html = '<div class="well" style="text-align: center;color: #707B8D;font-size: 18px">暂无产品</div>'
                    $('#ProductDetailsList').html(html)
                }

            }else{
                $.alert(data.message);
            }
        }),
        error: (function (res) {
            $.alert('操作失败，请稍后再试!');
        })
    });
}


//查询订单回款记录
function getReturnMoneyList() {
    //先销毁表格
    $payBackTable.bootstrapTable('destroy');
    $payBackTable.bootstrapTable({
        classes: 'table table-bordered table-hover table-striped',
        url: '/bankFlowExamine/queryReturnMoneyList',//请求地址
        method: 'post',//请求方式
        contentType: "application/x-www-form-urlencoded",//请求内容类型
        dataType: "json",//数据类型
        striped: true,//是否显示行间隔色
        sortable: true,//是否启用排序
        sortOrder: "asc",//排序方式
        sortName: 'createTm',//排序字段
        cache: false,//是否使用缓存
        showColumns: false,//显示隐藏列
        showRefresh: false,//显示刷新按钮
        showToggle: false,//切换显示样式
        showFooter: false,//显示Table脚部
        pagination: true,//是否显示分页
        showPaginationSwitch: false,//是否显示分页按钮
        clickToSelect: false,//是否启用点击选中行
        singleSelect: false,
        minimumCountColumns: 2,//最少要显示的列数
        undefinedText: '-',//cell没有值时显示
        sidePagination: "server",//分页方式：client客户端分页，server服务端分页
        // serverSort: true,
        uniqueId: 'returnMoneyId',
        idField: 'returnMoneyId',
        pageSize: 10,//每页的记录行数
        pageNumber: 1,//初始化加载第1页，默认第1页
        pageList: "[5, 10, 15, 20]",//可供选择的每页的行数

        fixedColumns: true,     // 冻结列
        fixedNumber: 1,         // 左侧固定列
        fixedRightNumber: 1,    // 右侧固定列

        queryParams: function (params) {
            params.pageSize = params.limit;
            params.pageIndex = (params.offset / params.limit) + 1;
            params.sortName = params.sort; //排序列名
            params.sortOrder = params.order;//排序方式
            //搜索条件
            params.examineId = $('#examineId').val();
            return params;
        },//查询参数
        columns: [
            {title: '主键', field: 'returnMoneyId',visible: false},
            {title: '序号', field: 'index', align: 'left', valign: 'middle', width: '60', formatter: indexFormat},
            {title: '产品名称', field: 'productName', align: 'left', valign: 'middle'},
            // {title: '产品号', field: 'finishOrderProductNum', align: 'left', valign: 'middle'},
            {title: '流水号', field: 'serial', align: 'left', valign: 'middle'},
            {title: '回款编号', field: 'arriveNum', align: 'left', valign: 'middle'},
            {title: '付款账号', field: 'paymentAccount', align: 'left', valign: 'middle'},
            {title: '付款单位', field: 'paymentUnitName', align: 'left', valign: 'middle'},
            {title: '到款时间',field: 'arriveTime', align: 'left', valign: 'middle'},
            {title: '到款金额',field: 'arriveMoney',align: 'left', valign: 'middle'},
            {title: '到款单位名称', field: 'arriveUnitName',align: 'left', valign: 'middle'},
            {title: '录入人', field: 'createByName',  align: 'left',valign: 'middle'},
            {title: '创建时间', field: 'createTm',  align: 'left',valign: 'middle'},
            // {title: '操作', field: 'operationThing',  align: 'right',valign: 'middle',formatter: enterPayMent},

        ],
        responseHandler: function (result) {
            if(result.code == "000000") {
                var obj = {
                    "rows": result.data,
                    "total": result.totalRecords//总条数
                };
            } else {
                var obj = {
                    "total": 0,
                    "rows": [],
                }
            }
            return obj;
        },
        onLoadSuccess: function () {
            // table列可拖动宽度
            $('#customerProductTableList').css({
                minWidth: $('#customerProductTableList').width()
            }).colResizable({
                resizeMode: 'overflow',
                liveDrag: true,
                gripInnerHtml: "<div class='grip'></div>",
                draggingClass: "dragging",
                disabledColumns: [0, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16],      // 禁止拖动的列
                postbackSafe: true,                                         // 刷新后保持拖动的宽度
                partialRefresh: true,                                       // 刷新表格之后继续保持可拖动功能
                flush: true,
                minWidth: 80,
                /*onResize: function () {
                }*/
            });
        },
        onLoadError: function (status) {
            if (status == 403) {
                alert("权限不足！禁止访问！");
            } else {
                //加载失败时执行
                alert("加载失败！");
            }
        },
        formatLoadingMessage: function () {
            return "请稍等，加载中...";
        },
        formatNoMatches: function () {
            return '无符合条件的记录';
        },
    });

}



/**
 * --列表序列号
 */
function indexFormat(value, row, index) {
    return index + 1;
}

function getAuditData() {
    $.ajax({
        url: '/bankFlowExamine/queryExamineInfo',
        type: 'post',
        dataType: 'json',
        data: {
            examineId: $('#examineId').val()
        },
        success: function (data) {
            if (data.code == '000000') {
                var dataArray = [];
                dataArray.push(data.data)
                $auditTable.bootstrapTable('hideLoading').bootstrapTable('load', dataArray);
            } else {
                $.alert('获取开发人员信息出错，代码：' + data.code);
            }
        },
        error: function (err) {
            $.alert('获取开发人员信息失败！');
            console.log(err);
        }
    })
};

// 初始化当前审核
function auditTableInit(){
    $auditTable.bootstrapTable({
        classes: 'table table-bordered table-hover table-striped',
        striped: true,                      // 是否显示行间隔色
        undefinedText: '-',                 // cell没有值时显示
        pagination: true,                   // 是否显示分页
        pageSize: '5',                      // 每页的记录行数
        pageNumber: 1,                      // 初始化加载第1页，默认第1页
        pageList: ['5', '10'],              // 可供选择的每页的行数
        columns: [
            {title: '主键', field: 'productOrderId', visible: false},
            {title: '序号', field: 'index', align: 'center', valign: 'left', formatter: indexFormat},
            {title: '产品名称', field: 'productName', align: 'left', valign: 'middle'},
            // {title: '产品号', field: 'finishOrderProductNum', align: 'left', valign: 'middle'},
            {title: '流水号', field: 'serial', align: 'left', valign: 'middle'},
            {title: '回款编号', field: 'arriveNum', align: 'left', valign: 'middle'},
            {title: '付款账号', field: 'paymentAccount', align: 'left', valign: 'middle'},
            {title: '付款单位', field: 'paymentUnitName', align: 'left', valign: 'middle'},
            {title: '到款时间',field: 'arriveTime', align: 'left', valign: 'middle'},
            {title: '到款金额',field: 'arriveMoney',align: 'left', valign: 'middle'},
            {title: '到款单位名称', field: 'arriveUnitName',align: 'left', valign: 'middle'},
            {title: '录入人', field: 'createByName',  align: 'left',valign: 'middle'},
            {title: '申请人', field: 'applyPeopleName',  align: 'left',valign: 'middle'},
            {title: '申请时间', field: 'applyTime', align: 'left', valign: 'middle'},
        ],
    });
};

function reviewButton(status) {
    if($('#removeNote').val() == ''){
        $.alert('请填写解除关联备注');
        return ;
    }
    $.ajax({
        url: '/bankFlowExamine/examine',
        type: 'POST',
        dataType: "json",
        contentType: "application/x-www-form-urlencoded",
        data: {
            examineId:$('#examineId').val(),  //客户id
            examineState:status,
            examineInfo:$('#removeNote').val(),
        },
        success: (function (data) {
            if (data.code == "000000") {
                $.alert({
                    title: '温馨提示',
                    content: data.message,
                    scrollToPreviousElement: false,
                    scrollToPreviousElementAnimate: false,
                    buttons: {
                        confirm: {
                            text: '确认',
                            btnClass: 'btn-primary',
                            action: function(){
                                $('#viewReview').modal('hide');
                                window.location.reload();
                                // refreshActivePane('/front/finance/bankFlowExamine');
                            }
                        }
                    }
                });
            }else{
                $.alert(data.message);
            }
        }),
        error: (function (res) {
            $.alert('操作失败，请稍后再试!');
        })
    });
};

/**
 * 功能：查看合作开发人员信息
 * */
function viewCooperate() {
    $.ajax({
        url: '/customerContract/selectContractCoDeveloperById',
        type: 'GET',
        dataType: 'json',
        data: {
            contractId: examineId
        },
        success: function (data) {
            if (data.code == '000000') {
                $('#cooperateTable').bootstrapTable('hideLoading').bootstrapTable('load', data.data);
            } else {
                $.alert('获取开发人员信息出错，代码：' + data.code);
            }
        },
        error: function (err) {
            $.alert('获取开发人员信息失败！');
            console.log(err);
        }
    })
}

// 初始化合作开发人员信息列表
function cooperateTable() {
    $('#cooperateTable').bootstrapTable({
        classes: 'table table-bordered table-hover table-striped',
        striped: true,                      // 是否显示行间隔色
        undefinedText: '-',                 // cell没有值时显示
        pagination: true,                   // 是否显示分页
        pageSize: '5',                      // 每页的记录行数
        pageNumber: 1,                      // 初始化加载第1页，默认第1页
        pageList: ['5', '10'],              // 可供选择的每页的行数
        columns: [
            {title: '合作开发人员', field: 'userName', align: 'left', valign: 'middle'},
            {title: '所属分公司', field: 'companyName', align: 'left', valign: 'middle'},
            {title: '分配金额', field: 'allocationMount', align: 'left', valign: 'middle'},
        ]
    });
}
//获取表格，新增表格名称：回款修改记录
function productCollection() {
    console.log(orderId)
    $('#orderCollection').bootstrapTable({
        classes: 'table table-bordered table-hover table-striped',
        url: '/returnMoneyLog/getReturnMoneyLogList',//请求地址
        method: 'get',
        // contentType: "application/x-www-form-urlencoded",//请求内容类型
        // dataType: "json",//数据类型
        striped: true,//是否显示行间隔色
        sortable: true,//是否启用排序
        sortOrder: "asc",//排序方式
        // sortName: 'createTm',//排序字段
        cache: false,//是否使用缓存
        showColumns: false,//显示隐藏列
        showRefresh: false,//显示刷新按钮
        showToggle: false,//切换显示样式
        showFooter: false,//显示Table脚部
        pagination: true,//是否显示分页
        showPaginationSwitch: false,//是否显示分页按钮
        clickToSelect: false,//是否启用点击选中行
        singleSelect: false,
        minimumCountColumns: 2,//最少要显示的列数
        undefinedText: '',//cell没有值时显示
        sidePagination: "server",//分页方式：client客户端分页，server服务端分页
        uniqueId: 'returnMoneyLogId',//设置每行唯一标识符
        idField: 'returnMoneyLogId',//指定主键列
        pageSize: 10,//每页的记录行数
        pageNumber: 1,//初始化加载第1页，默认第1页
        pageList: "[5, 10, 15, 20]",//可供选择的每页的行数

        fixedColumns: true,     // 冻结列
        fixedNumber: 1,         // 左侧固定列
        fixedRightNumber: 1,    // 右侧固定列

        queryParams: queryParams2,//查询参数
        columns:[
            {field: 'returnMoneyLogId', title: 'id', visible: false},
            {title: '回款编号', field: 'arriveNum', align: 'left', valign: 'middle'},
            {title: '操作', field: 'operatorType',align: 'left', valign: 'middle', formatter: updateReturnMoneyType},
            {title: '修改前信息', field: 'formerData',align: 'left', valign: 'middle'},
            {title: '修改后信息', field: 'newData',align: 'left', valign: 'middle'},
            {title: '修改人', field: 'createPeopleName', align: 'left', valign: 'middle'},
            {title: '修改时间',field: 'createTm', sortable: true,align: 'left', valign: 'middle'}
        ],
        formatNoMatches:function () {
            return '暂无数据'
        },
        responseHandler: function (result) {
            if(result.code == "000000") {
                var obj = {
                    "rows": result.data,
                    "total": result.totalRecords//总条数
                };
            } else {
                var obj = {
                    "total": 0,
                    "rows": [],
                }
            }
            return obj;
        },
    })
}

function queryParams2(params){
    params.pageSize = params.limit;
    params.pageIndex = (params.offset / params.limit) + 1;
    //搜索条件
    params.orderId = orderId;
    return params;
}

function updateReturnMoneyType(value, row, index) {
    var html = "";
    if (value ==1 ){
        html = "修改";
    }
    if (value ==2 ){
        html = "删除";
    }
    if (value ==3 ){
        html = "退款";
    }
    if (value ==4 ){
        html = "关联";
    }
    return html;
}